// 报销记录相关API
import api from './request'

/**
 * 分页查询报销记录
 * @param {Object} queryData 查询参数
 * @returns {Promise}
 */
export const getReimbursementRecordList = (queryData) => {
  return api.post('/reimbursement_record/page', queryData)
}

/**
 * 根据ID查询报销记录详情
 * @param {number} id 报销记录ID
 * @returns {Promise}
 */
export const getReimbursementRecordById = (id) => {
  return api.get(`/reimbursement_record/${id}`)
}

/**
 * 新增报销记录
 * @param {Object} data 报销记录数据
 * @returns {Promise}
 */
export const addReimbursementRecord = (data) => {
  return api.post('/reimbursement_record/add', data)
}

/**
 * 更新报销记录
 * @param {Object} data 更新数据
 * @returns {Promise}
 */
export const updateReimbursementRecord = (data) => {
  return api.put('/reimbursement_record/update', data)
}

/**
 * 删除报销记录
 * @param {number} id 报销记录ID
 * @returns {Promise}
 */
export const deleteReimbursementRecord = (id) => {
  return api.delete(`/reimbursement_record/${id}`)
}

/**
 * 计算报销金额
 * @param {number} patientId 患者ID
 * @param {number} totalCost 总费用
 * @returns {Promise}
 */
export const calculateReimbursement = (patientId, totalCost) => {
  return api.get('/reimbursement_record/calculate', {
    params: { patientId, totalCost }
  })
}

/**
 * 获取报销比例
 * @param {Object} params 查询参数
 * @param {string} params.hospitalLevel 医院等级（三级/二级/一级）
 * @param {string} params.personType 人员类型（在职/退休）
 * @param {number} params.cost 费用金额
 * @returns {Promise}
 */
export const getReimbursementRatio = (params) => {
  return api.get('/insured_person/reimbursement/ratio', {
    params: params
  })
}
